<template>
  <div class="login-container">
    <div class="left">
      <span style="display: none;">1</span>
    </div>
    <div class="right">
      <h1>登录</h1>
      <div class="form-container">
        <el-form ref="form" :model="form" :rules="rules">
          <el-form-item prop="mobile">
            <el-input ref="inputRef" v-model="form.mobile" clearable />
          </el-form-item>
          <el-form-item prop="password">
            <el-input v-model="form.password" show-password />
          </el-form-item>
          <el-form-item>
            <el-checkbox v-model="checked">用户平台使用协议</el-checkbox>
          </el-form-item>
          <el-form-item>
            <el-button class="my-btn" type="primary" @click="submit">登录</el-button>
          </el-form-item>
        </el-form>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'LoginCom',
  data() {
    return {
      form: {
        mobile: process.env.NODE_ENV === 'development' ? '13800000002' : '',
        password: process.env.NODE_ENV === 'development' ? 'hm#qd@23!' : ''
      },
      checked: false,
      rules: {
        mobile: [
          { pattern: /^(0|86|17951)?(13[0-9]|15[012356789]|166|17[3678]|18[0-9]|14[57])[0-9]{8}$/, required: true, message: '请输入手机号', trigger: 'blur' },
          { min: 11, max: 11, message: '请输入长度为11的正确手机号', trigger: 'blur' }
        ],
        password: [
          { required: true, message: '请输入密码', trigger: 'blur' },
          { min: 5, max: 11, message: '请输入正确密码', trigger: 'change' }
        ]
      },
      created() {

      }
    }
  },
  beforeEnter: (to, from, next) => {
    next()
  },
  methods: {
    submit() {
      // if (this.checked) {
      //   console.log('成功发送请求')
      // }
      if (!this.checked) {
        this.$message.error('请勾选用户协议')
        return
      }
      this.$refs['form'].validate(async(valid) => {
        console.log(valid)
        if (valid) {
          await this.$store.dispatch('user/ChangeToken', this.form)
          // this.$router.push('/')
          this.$message.success('登录成功')
        }
      })

      // this.$refs['form'].validate().then(res => {
      //   console.log(res)
      // }).catch(err => {
      //   console.log(err)
      // })
      //       try {
      // const res = await this.$refs
      //       } catch (error) {

      //       }
    }

  }
}
</script>

<style lang="scss" scoped>
.login-container {
  // background-color: skyblue;
  width: 100%;
  height: 100vh;
  display: flex;
  .left {
    // 百度搜索  flex符合属性的 一些含义
    // flex-grow 有剩余空间，是否自动扩大  0表示不扩大，1234扩大多少倍
    // flex-shrink 空间不够了，是否自动缩小  0表示不缩小
    // flex-basis 项目的基础宽度 一般不用写，浏览器自动给你算
    flex: 3 1 0%;
    // background-color: lightcoral;
    // background是一个复合属性，不是很好用
    background: url('../../assets/common/login_back.png');
    // 图片显示的大小， 50%  cover会裁剪但是会铺满  contain 会有多余的黑边 铺不满
    background-size: cover;
    // 图片如果很小，会不会重复铺满
    background-repeat: no-repeat;
    // 图片在背景上显示的位置，默认是左上角，center是中心
    background-position: center;
    padding: 0 100px;
    border-top-right-radius: 100px;
  }
  .right {
    flex: 2 1 0%;
    // background-color: lime;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .form-container {
    width: 70%;
  }
  .el-button.my-btn {
    width: 100%;
  }
}
</style>
